دالة FILTER في Excel

دوال البحث والمراجع / دوال المصفوفة الديناميكية

الغرض من الدالة

دالة FILTER هي أداة ديناميكية وقوية لتصفية البيانات. تسمح لك باستخراج صفوف أو أعمدة محددة من نطاق بيانات أكبر بناءً على واحد أو أكثر من الشروط التي تحددها. النتيجة تكون نطاقاً جديداً يحتوي فقط على البيانات التي تطابق معايير التصفية، وهذا النطاق يتحدث تلقائياً إذا تغيرت البيانات الأصلية.

صيغة الدالة (Syntax)

FILTER(array, include, [if_empty])
  • array: النطاق أو المصفوفة التي ترغب في تصفيتها.
  • include: نطاق أو مصفوفة من القيم المنطقية (TRUE أو FALSE) بنفس حجم الصفوف أو الأعمدة في array. تشير TRUE إلى الصفوف/الأعمدة التي يجب تضمينها في النتيجة، وFALSE إلى تلك التي يجب استبعادها. عادةً ما تكون هذه نتيجة تعبير منطقي (مثل B1:B5="مبيعات").
  • [if_empty]: (اختياري) القيمة التي ترغب في إرجاعها إذا لم يتم العثور على أي صفوف أو أعمدة تطابق معايير التصفية. إذا لم يتم تحديدها ولم يتم العثور على تطابقات، ستُرجع الدالة خطأ #CALC!.

أمثلة عملية

المثال 1: تصفية الموظفين حسب القسم

لدينا قائمة بأسماء الموظفين في العمود A وأقسامهم في العمود B. نريد استخراج جميع الموظفين الذين ينتمون إلى قسم 'المبيعات' فقط.

ABCDE
1أحمدمبيعات
2سارةتسويقبعد التصفية
3محمدمبيعاتأحمد
4ليلىموارد بشرية
5خالدمبيعات

الصيغة المستخدمة:

=FILTER(A1:B5, B1:B5="مبيعات")

توضيح:

الدالة قامت بتصفية الجدول A1:B5 وأعادت فقط الصفوف التي كان فيها القسم (العمود B) يساوي 'مبيعات'.

المثال 2: تصفية بوجود عدة شروط (AND)

نريد معرفة العاملين في قسم المبيعات والذين تتجاوز أعمارهم 25 عاماً لرفدهم لمهمات حساسة.

ABC
1الاسمالقسمالعمر
2أحمدمبيعات25
3سارةتسويق33
4محمدمبيعات29
5سارةمبيعات28
6
7التصفية
8محمد
9

الصيغة المستخدمة:

=FILTER(A2:c5,(B2:B5="مبيعات")*(C2:C5>25),"")

توضيح:

تعمل النجمة * على تصفية كل البيانات في الجدول التي تخضع للشرطين معاً AND. شرط القسم و شرط العمر.

المثال 3: تصفية بوجود عدة شروط (OR)

لدينا قائمة بأسماء الأشخاص في العمود A والمدن التي يعيشون فيها في العمود B. نريد استخراج الأشخاص الذين يعيشون إما في 'دبي' أو 'الشارقة'.

ABCDE
1عليدبيالتصفية
2ميسالفجيرةعلي
3خالدالشارقة
4مريمدبي
5يوسفالفجيرة

الصيغة المستخدمة:

=FILTER(A1:B5, (B1:B5="دبي")+(B1:B5="الشارقة"))

توضيح:

لدمج شروط 'أو' (OR)، نستخدم علامة الجمع +. أي صف يطابق أياً من الشرطين سيتم تضمينه.

تمرين: اكتب الدالة لتصفية أسماء العاملين بدون الساكنين في دبي. مع ترتيب النتائج أبجديا وفقاً للاسم.

الحل: بالنسبة لاستثناء دبي يمكننا استخدام إشارة لا يساوي في اكسل وهي <>وبالنسبة للترتيب يمكننا استخدام SORT وأن يكون الترتيب وفقاً للعمود الأول. فتكون الدالة على الشكل:=SORT(FILTER(A1:B5, (B1:B5<>"دبي")),1) وتكون النتيجة:

خالدالشارقة
ميسالفجيرة
يوسفالفجيرة